From 6d4655b01a60fdafee0ab4ea225e98f842659f78 Mon Sep 17 00:00:00 2001 From: Kristian Rietveld Date: Fri, 5 Apr 2002 16:28:14 +0000 Subject: [PATCH] free anchor row reference after unselecting the selection (fixes #76272) Fri Apr 5 18:28:56 2002 Kristian Rietveld * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free anchor row reference after unselecting the selection (fixes #76272) Fri Apr 5 18:27:48 2002 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return when we don't have to open all children (fixes #75736) Fri Apr 5 18:24:24 2002 Kristian Rietveld * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref cellrenderer after clearing the attributes of the renderer (fixes #75592) --- ChangeLog | 16 ++++++++++++++++ ChangeLog.pre-2-10 | 16 ++++++++++++++++ ChangeLog.pre-2-2 | 16 ++++++++++++++++ ChangeLog.pre-2-4 | 16 ++++++++++++++++ ChangeLog.pre-2-6 | 16 ++++++++++++++++ ChangeLog.pre-2-8 | 16 ++++++++++++++++ gtk/gtktreeselection.c | 4 +++- gtk/gtktreeview.c | 2 +- gtk/gtktreeviewcolumn.c | 2 +- 9 files changed, 101 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index a516dd73af..5cbf6473e9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +Fri Apr 5 18:28:56 2002 Kristian Rietveld + + * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free + anchor row reference after unselecting the selection (fixes #76272) + +Fri Apr 5 18:27:48 2002 Kristian Rietveld + + * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return + when we don't have to open all children (fixes #75736) + +Fri Apr 5 18:24:24 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref + cellrenderer after clearing the attributes of the renderer (fixes + #75592) + Fri Apr 5 05:55:14 2002 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index a516dd73af..5cbf6473e9 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,19 @@ +Fri Apr 5 18:28:56 2002 Kristian Rietveld + + * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free + anchor row reference after unselecting the selection (fixes #76272) + +Fri Apr 5 18:27:48 2002 Kristian Rietveld + + * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return + when we don't have to open all children (fixes #75736) + +Fri Apr 5 18:24:24 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref + cellrenderer after clearing the attributes of the renderer (fixes + #75592) + Fri Apr 5 05:55:14 2002 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement. diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index a516dd73af..5cbf6473e9 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,19 @@ +Fri Apr 5 18:28:56 2002 Kristian Rietveld + + * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free + anchor row reference after unselecting the selection (fixes #76272) + +Fri Apr 5 18:27:48 2002 Kristian Rietveld + + * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return + when we don't have to open all children (fixes #75736) + +Fri Apr 5 18:24:24 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref + cellrenderer after clearing the attributes of the renderer (fixes + #75592) + Fri Apr 5 05:55:14 2002 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement. diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index a516dd73af..5cbf6473e9 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,19 @@ +Fri Apr 5 18:28:56 2002 Kristian Rietveld + + * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free + anchor row reference after unselecting the selection (fixes #76272) + +Fri Apr 5 18:27:48 2002 Kristian Rietveld + + * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return + when we don't have to open all children (fixes #75736) + +Fri Apr 5 18:24:24 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref + cellrenderer after clearing the attributes of the renderer (fixes + #75592) + Fri Apr 5 05:55:14 2002 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement. diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index a516dd73af..5cbf6473e9 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,19 @@ +Fri Apr 5 18:28:56 2002 Kristian Rietveld + + * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free + anchor row reference after unselecting the selection (fixes #76272) + +Fri Apr 5 18:27:48 2002 Kristian Rietveld + + * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return + when we don't have to open all children (fixes #75736) + +Fri Apr 5 18:24:24 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref + cellrenderer after clearing the attributes of the renderer (fixes + #75592) + Fri Apr 5 05:55:14 2002 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement. diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index a516dd73af..5cbf6473e9 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,19 @@ +Fri Apr 5 18:28:56 2002 Kristian Rietveld + + * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free + anchor row reference after unselecting the selection (fixes #76272) + +Fri Apr 5 18:27:48 2002 Kristian Rietveld + + * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return + when we don't have to open all children (fixes #75736) + +Fri Apr 5 18:24:24 2002 Kristian Rietveld + + * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref + cellrenderer after clearing the attributes of the renderer (fixes + #75592) + Fri Apr 5 05:55:14 2002 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement. diff --git a/gtk/gtktreeselection.c b/gtk/gtktreeselection.c index c93e375923..1be26116f0 100644 --- a/gtk/gtktreeselection.c +++ b/gtk/gtktreeselection.c @@ -193,13 +193,15 @@ gtk_tree_selection_set_mode (GtkTreeSelection *selection, if (type == GTK_SELECTION_NONE) { - gtk_tree_row_reference_free (selection->tree_view->priv->anchor); /* We do this so that we unconditionally unset all rows */ tmp_func = selection->user_func; selection->user_func = NULL; gtk_tree_selection_unselect_all (selection); selection->user_func = tmp_func; + + gtk_tree_row_reference_free (selection->tree_view->priv->anchor); + selection->tree_view->priv->anchor = NULL; } else if (type == GTK_SELECTION_SINGLE || type == GTK_SELECTION_BROWSE) diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c index 14e014cda0..121aad7250 100644 --- a/gtk/gtktreeview.c +++ b/gtk/gtktreeview.c @@ -8672,7 +8672,7 @@ gtk_tree_view_real_expand_row (GtkTreeView *tree_view, gboolean expand; - if (node->children) + if (node->children && !open_all) return TRUE; if (! GTK_RBNODE_FLAG_SET (node, GTK_RBNODE_IS_PARENT)) return FALSE; diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c index 55b05c14ee..1c46d6123a 100644 --- a/gtk/gtktreeviewcolumn.c +++ b/gtk/gtktreeviewcolumn.c @@ -1204,8 +1204,8 @@ gtk_tree_view_column_clear (GtkTreeViewColumn *tree_column) { GtkTreeViewColumnCellInfo *info = (GtkTreeViewColumnCellInfo *)list->data; - g_object_unref (G_OBJECT (info->cell)); gtk_tree_view_column_clear_attributes (tree_column, info->cell); + g_object_unref (G_OBJECT (info->cell)); g_free (info); } -- 2.30.2